package com.xiaomei.manager.service;

import java.util.List;
import java.util.Map;

import com.xiaomei.manager.model.Order;
import com.xiaomei.manager.web.dto.OrderDto;
import com.xiaomei.manager.web.dto.req.DayCompleteDto;
import com.xiaomei.manager.web.dto.req.OrderQueryDto;
import com.xiaomei.manager.web.dto.req.QuantityDto;
import com.xiaomei.manager.web.page.Page;

public interface IOrderService {

	/**
	 * 根据请求参数map查询订单信息
	 * @param paramMap 请求参数map
	 * @return 订单信息数据集
	 */
	List<OrderDto> getOrderForList(OrderQueryDto dto, Page<OrderDto> page);
	/**
	 * 根据定订单id查询订单信息
	 * @param id  
	 * @return 订单数据
	 */
	Object selectByPrimaryKey(Integer id); 
	/**
	 * 根据订单id修改订单信息
	 * @param record 
	 * @return 受影响的行数
	 */
	int updateByPrimaryKeySelective(Order record);
	
	/**
	 * 日下单量
	 * @return
	 */
	List<QuantityDto> getQuantity(Page<QuantityDto> page);
	
	/**
	 * 日完成量
	 * @return
	 */
	List<DayCompleteDto> getDayComplete(Page<DayCompleteDto> page);
	/**
	 * 获取每天下单量
	 * @param map 数据集
	 * @return
	 */
	List<QuantityDto> getQuantityCount(String startTime,String endTime);
	/**
	 * 获取每天乘单量
	 * @param map 数据集
	 * @return
	 */
	List<DayCompleteDto> selectCompleteCount(String startTime,String endTime);
	/**
	 * 新增订单
	 * @param record
	 * @return
	 */
	 int insertSelective(Order record);
}
